#ifndef TESTSERVER_H_
#define TESTSERVER_H_

#include "../FileServer.h"
#include "../lib/Fifo.h"

#include <iostream>
#include <fstream>


#define SEMAFORO_ARCH "tmp/semaforo.tmp"

/*
 *
 * Clase para testear el FileServer
 *
 *
 *
 * */

class TestServer: public FileServer {

private:
	/* clases redefinidas */

	bool sendFile(Fifo &fileTransfer, std::string & fileName)
	{
		std::cout<<"Server: Enviando archivo "<<fileName<<std::endl;
		std::cout<<"Server: Archivo enviado "<<fileName<<std::endl;

		fileTransfer.cerrar();

		return true;
	}

	bool receiveFile(Fifo &fileTransfer, std::string & fileName)
	{
		std::cout<<"Cliente: Recibiendo archivo "<<fileName<<std::endl;
		std::cout<<"Cliente: Archivo Recibido "<<fileName<<std::endl;
		fileTransfer.cerrar();
		return true;
	}


public:

	static void crearArchivos()
	{
		std::fstream f;
		f.open(SEMAFORO_ARCH, std::ios::out);
		f.close();
	}

	TestServer(int userID);
	virtual ~TestServer();

};

#endif /* TESTSERVER_H_ */
